CharacterController
CharacterController The method of moving the character, how it should act and what to take into account Description The character controller should be flexible in the sense that it should adapt to the environment which it is in. Functionality: *Main control should function as a joystick, see aesthetics for references *Horizontal Movement *Done through touching the screen and moving the finger right or left. The amount velocity/speed will depend on the distance from the starting point to the new point. **The speed should be adjusted through testing. **If the player meets a pushable object and keeps running towards that object for more than 1.25 sec, the object should start to move in the same direction as the player moves. **The movement will stop if the finger no longer touches the tablet and decrease if the finger is moved back towards the original point. **This should be doable on the left side of the screen **The velocity at which the character moves at can be affected by the environment that the character is in (for instance, wind slows the movement speed) **Velocity is also dependant on Degrees from top and bottom to middle point **Sprinting ***If the player is in the first layer (not in a puzzle) and have been running towards 2015 for 5 seconds the speed will be increased to 700%, see animation: Sprinting. ***If the player is in the first layer (not in a puzzle) and have been running towards "maxium year reached - 10 years" for 5 seconds the speed will be increased to 300%, When this point ("maxium year reached - 10 years") the player's speed should gradually be reduced till they reach 100% at their "maximum year reached". See animation: Sprinting. Percentages is percentage velocity of the character’s movement *Vertical Movement **Jumping ***Done by pressing within designated area ***Should be a fluent movement. ***Must be able to move Horizontally while jumping ***The exact jumping height will be set after testing **Climbing up rope etc. ***Will be done by moving the “joystick” upwards while standing in front of them. Within 30 degree cone at the top. ***The player should be able to grab a ladder in the air and start climbing **Climbing down ropes etc. ***Will be done by moving the “joystick” downwards while standing in front of them. Within 30 degree cone at the bottom. **Horizontal movement on ice will make the player slide (accelerate and deaccelerate slower). **Horizontal movement in mud will make the player slower & acceleration rate will be lowered. (also for when jumping around in the mud) *Diving **Is only available while water toxicity is below 0.7, see mWaterToxicity. Otherwise the sea level will contain a boat as transport instead of swimming (See MBoat ). **Moving ***Done using the joystick movement, but with all 360 degrees unlocked so that you’re able to move in any direction instead of only horizontally **Full speed in all directions ***No use function *Use **Done in the same manner as climbing, standing in front of the path or item and moving the “joystick” upwards *Control scheme should be flippable from the main menu (Nice to have) Sound: *The narrator could comment differently on each action. *When jumping a small exhale should/could be added. *Footsteps *On use the sound will depend on the item. Additional information: *REMEMBER to let the controller be affectable by the environment (both biome (slow in muddy terrain or sliding on ice) and wind bursts) Aesthetics *See https://www.youtube.com/watch?v=vzxxnsWsLoI#t=60 for reference (at this specific time) *Visuals of both the jump-zone and the joystick-zone *See UIGameControlInterface Animation *Horizontal **The running animation should be adjustable to the speed of the character. ***Full sprint when at max speed, jogging when medium speed, walking when slow. ***Gradual increase in pushing power. (start with hands then proceed to putting their shoulder against the object and pushing. *Vertical **Jump ***When starting the jump the character should bend down and then jump up in full stretch ***Depending on the initial speed, the character will either stretch its whole body upwards (slow/standing still) or do a “running jump”, which will blend with the running animation. ***A grabbing animation for when the character is in the air and grabs a ladder or the like. **Swimming ***Crawling, should be flipped in the same manner as when moving on ground ***See https://www.youtube.com/watch?v=IyR7JYllk9U for reference *Climbing **See https://www.youtube.com/watch?v=0K--NRThDmk#t=62 for reference *Use **The use animation will depend on the usable item. *Sprinting **When the character is sprinting the screen should become blurry and the years should fly by over the character. *Moving left **The character flips around so that the character always faces the direction that they are heading.